home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Internet Tools 1993 July / Internet Tools.iso / RockRidge / mail / mm / ccmd / cmfnc.top < prev    next >
Encoding:
Text File  |  1990-12-18  |  1.7 KB  |  42 lines

  1. /*
  2.  Copyright (c) 1986, 1990 by The Trustees of Columbia University in
  3.  the City of New York.  Permission is granted to any individual or
  4.  institution to use, copy, or redistribute this software so long as it
  5.  is not sold for profit, provided this copyright notice is retained.
  6.  
  7.  Author: Andrew Lowry
  8. */
  9. /* cmfnc.h
  10. **
  11. ** This file contains function-specific symbols and declarations needed
  12. ** by application programs that wish to make use of the ccmd package.
  13. ** It is generated by m4 by means of the cmfnc.h4 file in conjunction with
  14. ** individual configuration files (as in cm???.cnf).  The initial portion
  15. ** of the file, including this comment, is copied verbatim from the file
  16. ** cmfnc.top.
  17. **
  18. ** Function codes are given names like _CMTTT, where TTT is the three-
  19. ** letter abbreviation for the type, and are assigned small positive
  20. ** integer values.
  21. **
  22. ** Function-specific error codes are given names of the form TTTxEEE,
  23. ** where TTT is the three-letter abbreviation for the parse type, and
  24. ** EEE is an abbreviation for the error.  The values assigned to these
  25. ** symbols are in two parts.  The left half contains the function code
  26. ** for the parse function, and the right half contains an integer
  27. ** in the range 0 to n-1, where there are n errors defined for the parse
  28. ** type.  Generic error codes for the ccmd package as a whole are given
  29. ** names like CMxEEE, and have zeros in the left half.
  30. **
  31. ** Flag values are generally given names like TTT_FFF, where FFF is a
  32. ** mnemonic for the flag.  Other constants are given names like _TTTCCC,
  33. ** where CCC is a mnemonic for the constant.
  34. **/
  35.  
  36. /* Macro to build error code values from the function code and error
  37. ** sub-code values.
  38. **/
  39.  
  40. #define CMERR(fcode,ecode)    ((fcode << 8) | ecode)
  41.  
  42.